package com.ruoyi.omp.api.domain;

import com.alibaba.fastjson.annotation.JSONField;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.core.annotation.Excel;
import com.ruoyi.common.core.web.domain.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.math.BigDecimal;
import java.util.Date;

/**
 * 抄表录入对象 omp_ny_check_meter
 *
 * @author cjie
 * @date 2021-07-29
 */
@Data
@ApiModel
public class NyCheckMeter extends BaseEntity {
    private static final long serialVersionUID = 1L;

    /** Id */
    @ApiModelProperty(value = "Id")
    private String id;

    /** 费用周期 */
    @JsonFormat(pattern = "yyyy-MM")
    @JSONField(format="yyyy-MM")
    @Excel(name = "费用周期", width = 30, dateFormat = "yyyy-MM")
    @ApiModelProperty(value = "费用周期")
    private Date feeCycle;

    /** 仪表Id */
   // @Excel(name = "仪表Id",sort = 0)
    @ApiModelProperty(value = "仪表Id")
    private String meterId;

    /** 仪表编码 */
    @Excel(name = "仪表编码")
    @ApiModelProperty(value = "仪表编码")
    private String meterNum;

    @Excel(name = "仪表类型")
    @ApiModelProperty(value = "仪表类型")
    private String meterType;

    //用途
    @Excel(name = "类别")
    @ApiModelProperty(value = "仪表类别(总表,私表..)")
    private String category;

    @Excel(name = "企业")
    @ApiModelProperty(value = "企业名称")
    private String enterpriseName;

    @Excel(name = "位置")
    @ApiModelProperty(value = "位置")
    private String installPosition;

    /** 倍率 */
    @Excel(name = "倍率")
    @ApiModelProperty(value = "倍率")
    private BigDecimal magnification;

    /** 上期读数 */
    @Excel(name = "上期读数",sort=3)
    @ApiModelProperty(value = "上期读数")
    private BigDecimal lastValue;

    /** 本期读数 */
    @Excel(name = "本期读数",sort=4)
    @ApiModelProperty(value = "本期读数")
    private BigDecimal currentValue;

    /** 实际用量 */
    @Excel(name = "实际用量")
    @ApiModelProperty(value = "实际用量")
    private BigDecimal actualDosage;

    /** 上期抄表日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    //@Excel(name = "上期抄表日期", width = 30, dateFormat = "yyyy-MM-dd",sort=5)
    @ApiModelProperty(value = "上期抄表日期")
    private Date lastCheckDate;

    /** 本期抄表日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "本期抄表日期", width = 30, dateFormat = "yyyy-MM-dd",sort=6)
    @ApiModelProperty(value = "本期抄表日期")
    private Date currentCheckDate;

    /** 分摊池量 */
    @Excel(name = "分摊池量")
    @ApiModelProperty(value = "分摊池量")
    private BigDecimal shareInitialValue;

    /** 抄表人 */
    @Excel(name = "抄表人",sort=7)
    @ApiModelProperty(value = "抄表人")
    private String checkMan;

    /** 删除标志(0正常 1删除) */
    @ApiModelProperty(value = "删除标志(0正常 1删除)")
    private String delFlag;

    /** 租户Id */
    //@Excel(name = "租户Id")
    @ApiModelProperty(value = "租户Id")
    private String tenantId;

    /** 当月分摊(总表设定值) */
    @Excel(name = "当月分摊(总表设定值)")
    @ApiModelProperty(value = "当月分摊(总表设定值)")
    private BigDecimal monthShare;

    //以下属性为页面视图属性
    /** 仪表类型 */

    //园区编号
    @ApiModelProperty(value = "园区编号")
    private String parkNum;
    //园区编号
    @ApiModelProperty(value = "园区Id")
    private String parkId;

    //楼栋
    @ApiModelProperty(value = "楼栋编号")
    private String buildingNum;

    @ApiModelProperty(value = "企业id")
    private String enterpriseId;

    @ApiModelProperty(value = "抄表记录id")
    private String checkMaterId;

    //是否超额
    private String overMax;
    //最大额度
    private BigDecimal maxValue;
}
